1. Field of the Invention
This invention generally relates to serial digital communications and, more particularly, to a system and method for calculating the value of M in the reception of multi-link traffic.
2. Description of the Related Art
In multi-link systems, a decision must be made to determine if a late arriving packet is lost. Request for Comments (RFC)-1990 is a specification defining an algorithm that determines when a late arriving packet can accurately be considered lost using a calculated value labeled “M”. As defined in RFC-1990, which was advanced to standard status by the Internet Engineering Task Force in December 1999, a single twelve or twenty-four bit value must be maintained for each link within a bundle. While the M value is the most accurate means of determining that a late-arriving packet is lost, it is also very memory intensive.
For hardware implementations of the multi-link protocol that support thousands of connections, the method of calculating M as defined in RFC-1990, requires an amount of memory that prohibits the use of internal memory in a single chip solution. Current hardware implementations of the multi-link protocol avoid this problem by using a purely time based method of guessing when a late arriving packet is lost. This solution estimates to amount of time that the system will wait for an arriving packet fragment. While this solution requires little memory for the calculation of M, it wastes either connection bandwidth or packet resequencing resources in an environment of typical Internet traffic.
An estimate that is too small will cause packets that are late to be considered lost. When a packet, that has been previously determined to be lost, arrives, it must be discarded. Some upper layer protocols require discarded packets to be resent, thus consuming even more network bandwidth. An estimate that is too large requires that resequencing resources he consumed while waiting for a packet that is lost. These resources must be consumed because packets that are received while waiting for the late packet cannot be sent to the system until the late packet is determined to be lost. The problems associated with this purely time based solution are compounded when the implementation attempts to support connections with different bandwidths.
It would be advantageous if process were developed to calculate the value M that was not wasteful of either network resources or device memory.